package com.sikaryofficial.workbench.domain.dto.resp.membership;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author : wuweihong
 * @desc : 会员激励政策响应实体
 * @date : 2024-10-20
 */

@Getter
@Setter
@ToString
@ApiModel(value = "会员激励政策DTO出参对象", description = "会员激励政策DTO出参对象")
public class MembershipPolicyDTO implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 会员激励政策id
	 */
	@ApiModelProperty(value = "会员激励政策id")
	private Long membershipPolicyId;

	/**
	 * 标题
	 */
	@ApiModelProperty(value = "标题")
	private String title;

	/**
	 * 状态
	 * @see com.sikaryofficial.workbench.constant.MembershipPolicyEnum
	 */
	@ApiModelProperty(value = "状态:0-未激活, 1-已激活", example = "0")
	private Integer status;

	/**
	 * 状态
	 */
	@ApiModelProperty(value = "状态描述")
	private String statusDesc;

	/**
	 * 最低金额
	 */
	@ApiModelProperty(value = "最低金额")
	private BigDecimal minAmount;

	/**
	 * 最高金额
	 */
	@ApiModelProperty(value = "最高金额")
	private BigDecimal maxAmount;

	/**
	 * 折扣比例
	 */
	@ApiModelProperty(value = "折扣")
	private BigDecimal discount;

	/**
	 * 是否指定用户
	 */
	@ApiModelProperty(value = "是否指定用户")
	private Boolean hasSpecificUser;

	/**
	 * 指定用户列表
	 */
	@ApiModelProperty(value = "指定用户列表")
	private List<MembershipRelationDTO> users;

	/**
	 * 创建人
	 */
	@ApiModelProperty(value = "创建人")
	private Long createdBy;

	/**
	 * 创建时间
	 */
	@ApiModelProperty(value = "创建时间")
	private Date createdTime;

}
